#include"process.h"

int main()
{
    int fd=Open("./test.txt",O_RDWR);
    int len=lseek(fd,0,SEEK_END);
    void *addr=Mmap(NULL,len,PROT_READ|PROT_WRITE,MAP_PRIVATE,fd,0);//MAP_PRIVATE相当于只读
    //close(fd);只要映射建立成功，文件即可以关闭
    int pid=Fork();
    if(pid>0)
    {
        char buf[512]="hello baby";
        //如果打开的文件本身大小只有1，也就是只有一个字，那么该句也只映射过去一个h
        memcpy(addr,buf,strlen(buf)+1);
        printf("len =%d\n",strlen(buf)+1);
        wait(NULL);

    }
    else if(pid==0)
    {
        sleep(1);
        char *buf=(char*)addr;
        printf("%s\n",buf);
        //close(fd);只要映射建立成功，文件即可以关闭
    }
    
    return 0;
}